home *** CD-ROM | disk | FTP | other *** search
/ Amiga Developer CD 2.1 / Amiga Developer CD v2.1.iso / Extras / MIDI / camd-37.1 / development / include / midi / midiprefs.h < prev    next >
Encoding:
C/C++ Source or Header  |  1999-10-27  |  2.4 KB  |  85 lines

  1. #ifndef MIDI_MIDIPREFS_H
  2. #define MIDI_MIDIPREFS_H
  3.  
  4. /************************************************************************
  5. *     C. A. M. D.    (Commodore Amiga MIDI Driver)                   *
  6. *************************************************************************
  7. *                                    *
  8. * Design & Development    - Roger B. Dannenberg                *
  9. *            - Jean-Christophe Dhellemmes            *
  10. *            - Bill Barton                    *
  11. *                       - Darius Taghavy                                *
  12. *                                                                       *
  13. * Copyright 1990-1999 by Amiga, Inc.                                    *
  14. *************************************************************************
  15. *
  16. * midiprefs.h - CAMD MIDI preferences
  17. *
  18. ************************************************************************/
  19.  
  20. #ifndef EXEC_TYPES_H
  21.   #include <exec/types.h>
  22. #endif
  23.  
  24. #ifndef LIBRARIES_IFFPARSE_H
  25. #include <libraries/iffparse.h>
  26. #endif
  27.  
  28.  
  29. /***************************************************************
  30. *
  31. *   MidiUnitDef
  32. *
  33. ***************************************************************/
  34.  
  35. #define MaxMidiDevName        32
  36. #define MaxMidiInOutName    32
  37. #define MaxMidiComment        34
  38.  
  39. struct MidiUnitDef 
  40. {
  41.     UBYTE MidiDeviceName[32];    /* Name of MIDI device driver for this Unit (ignored for MUDF_Internal) */
  42.     UBYTE MidiClusterInName[32];/* Name of Cluster for input from MIDI device driver */
  43.     UBYTE MidiClusterOutName[32];/* Name of Cluster for output to MIDI device driver */
  44.     UBYTE MidiDeviceComment[34]; /* Comment field */
  45.     UBYTE MidiDevicePort;    /* MIDI device driver port number for this Unit */
  46.     UBYTE Flags;
  47.     ULONG XmitQueueSize;
  48.     ULONG RecvQueueSize;
  49.     ULONG Reserved[4];
  50. };
  51.  
  52.     /* flags */
  53. #define MUDF_Internal     (1<<0)    /* Use Amiga's internal serial port.
  54.                    Ignore MidiDeviceName/Port when set.
  55.                    Only one Unit can legally have this bit set. */
  56. #define MUDF_Ignore     (1<<1) /* Ignore this entry. */
  57.  
  58. /* !!! maybe additional flags:    running status enable, thru */
  59.  
  60.     /* minimum queue sizes */
  61.  
  62. #define MinXmitQueueSize 512L    /* minimum send queue size (bytes) */
  63. #define MinRecvQueueSize 2048L    /* minimum recv queue size (words) */
  64.  
  65.  
  66. /***************************************************************
  67. *
  68. *   MidiPrefs
  69. *
  70. ***************************************************************/
  71.  
  72.  
  73. #define ID_MIDI MAKE_ID('M','I','D','I')
  74.  
  75. struct MidiPrefs 
  76. {
  77.     UBYTE NUnits;
  78.     UBYTE pad0[3];
  79.     struct MidiUnitDef UnitDef[1];
  80. };
  81.  
  82. #define MidiPrefsName  "midi.prefs"
  83.  
  84. #endif
  85.